package com.qing.springcloud.entity;

import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.util.Date;

import com.qing.springcloud.model.MsgType;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * 消息存储表 
(message)实体类
 *
 * @author zhipeng.cao
 * @since 2025-07-09 20:09:50
 * @description 由 Mybatisplus Code Generator 创建
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("message")
public class Message extends Model<Message> implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId
	private Long id;
    /**
     * 消息UUID
     */
    private String msgId;
    /**
     * 消息类型 私有、组、ACK、心跳、状态
     * (0:文本,1:图片,2:语音,3:视频,4:文件,5:位置,6:红包)
     */
    private MsgType msgType;
    /**
     * 消息内容
     */
    private String content;
    /**
     * 发送者ID
     */
    private Long senderId;
    /**
     * 接收者ID(用户或群)
     */
    private Long receiverId;
    /**
     * 聊天类型(0:私聊,1:群聊)
     */
    private Integer chatType;
    /**
     * 消息状态(0:发送中,1:已送达,2:已读,3:删除)
     */
    private Integer status;
    /**
     * 发送时间
     */
    private Date sendTime;
    /**
     * 接收时间
     */
    private Date receiveTime;
    /**
     * 已读时间
     */
    private Date readTime;
    /**
     * 扩展信息(位置坐标/文件信息等)
     */
    private String extra;

}